import request from '@/utils/request'

/**
 * 库存 价格是否有效（支持本地购物车）
 * @param {*} skuId
 * @returns
 */
export function getNewCart(skuId) {
    return request(`/goods/stock/${skuId}`, 'get')
}

/**
 * 获取商品的specs和skus
 * @param {String} skuId - 商品SKUID
 * @returns Promise
 */
export const getGoodsAndSkus = skuId => {
    return request(`/goods/sku/${skuId}`, 'get')
}

/**
 * 合并购物车
 * @param {Array<Object>} cartList
 * @param {String} item.skuId - 商品SKUID
 * @param {Boolean} item.selected - 是否选中
 * @param {Integer} item.count - 数量
 * @returns
 */
export function mergeCart(cartList) {
    return request('/member/cart/merge', 'post', cartList)
}
/**
 * 获取购物车列表
 * @returns
 */
export function findCart() {
    return request('/member/cart', 'get')
}
/**
 * 加入购物车
 */
export function addCart({ skuId, count }) {
    return request('/member/cart', 'post', { skuId, count })
}
/**
 * 删除购物车商品
 * @param {Array<String>} ids
 * @returns
 */
export function deleteCart(ids) {
    return request('/member/cart', 'delete', { ids })
}

/**
 * 修改购物车
 * @param {*} param0
 * @returns
 */
export function updateCart({ skuId, selected, count }) {
    return request(`/member/cart/${skuId}`, 'put', { selected, count })
}

/**
 *
 * @param {Boolean} selected 选中状态
 * @param {Array} ids 选中的数组
 * @returns
 */
export function checkAllCart({ selected, ids }) {
    return request('/member/cart/selected', 'put', { selected, ids })
}